package com.fowo.api.model.shein.order.goods;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/** 希音订单商品 导入导出辅助模型 */
@Getter
@Setter
public class SheinOrderGoodsExcelPo {

  @Size(max = 50, message = "订单号长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "订单号")
  private String orderNo;

  @Size(max = 50, message = "商品编号长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "商品编号")
  private String goodsId;

  @Size(max = 50, message = "SKU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "SKU")
  private String skuCode;

  @Size(max = 50, message = "SKC长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "SKC")
  private String skc;

  @Size(max = 50, message = "卖方SPU的ID长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "卖方SPU的ID")
  private String goodsSn;

  @Size(max = 50, message = "卖方SKU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "卖方SKU")
  private String sellerSku;

  @Size(max = 50, message = "商品状态长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "商品状态")
  private String goodsStatus;

  @Size(max = 50, message = "订单货物状态长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "订单货物状态")
  private String newGoodsStatus;

  @Size(max = 50, message = "SKU属性信息长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "SKU属性信息")
  private String skuAttribute;

  @Size(max = 50, message = "产品名称长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "产品名称")
  private String goodsTitle;

  @Size(max = 1000, message = "产品图片地址长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "产品图片地址")
  private String spuPicURL;

  @Size(max = 50, message = "商品重量长度不能超过20")
  @ExcelProperty(value = "商品重量")
  private java.math.BigDecimal goodsWeight;

  @Size(max = 50, message = "库存标签长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "库存标签")
  private String storageTag;

  @Size(max = 50, message = "物流状态长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "物流状态")
  private String performanceTag;

  @Size(max = 50, message = "换货标示长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "换货标示")
  private String goodsExchangeTag;

  @Size(max = 50, message = "被交换产品的id长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "被交换产品的id")
  private String beExchangeEntityId;

  @Size(max = 50, message = "货币长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "货币")
  private String orderCurrency;

  @Size(max = 50, message = "订单货物销售价格长度不能超过20")
  @ExcelProperty(value = "订单货物销售价格")
  private java.math.BigDecimal sellerCurrencyPrice;

  @Size(max = 50, message = "店内优惠券金额长度不能超过20")
  @ExcelProperty(value = "店内优惠券金额")
  private java.math.BigDecimal orderCurrencyStoreCouponPrice;

  @Size(max = 50, message = "促销折扣金额长度不能超过20")
  @ExcelProperty(value = "促销折扣金额")
  private java.math.BigDecimal orderCurrencyPromotionPrice;

  @Size(max = 50, message = "SHEIN向卖家收取的佣金长度不能超过20")
  @ExcelProperty(value = "SHEIN向卖家收取的佣金")
  private java.math.BigDecimal commission;

  @Size(max = 50, message = "佣金费率长度不能超过20")
  @ExcelProperty(value = "佣金费率")
  private java.math.BigDecimal commissionRate;

  @Size(max = 50, message = "SHEIN向SFS卖家收取的服务费长度不能超过20")
  @ExcelProperty(value = "SHEIN向SFS卖家收取的服务费")
  private java.math.BigDecimal serviceCharge;

  @Size(max = 50, message = "SHEIN向卖家收取的履约服务费长度不能超过20")
  @ExcelProperty(value = "SHEIN向卖家收取的履约服务费")
  private java.math.BigDecimal performanceServiceCharge;

  @Size(max = 50, message = "预估收入长度不能超过20")
  @ExcelProperty(value = "预估收入")
  private java.math.BigDecimal estimatedIncome;

  @Size(max = 50, message = "SPU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "SPU")
  private String spuName;

  @Size(max = 50, message = "货物销售税长度不能超过20")
  @ExcelProperty(value = "货物销售税")
  private java.math.BigDecimal saleTax;

  @Size(max = 50, message = "仓库编号长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "仓库编号")
  private String warehouseCode;

  @Size(max = 50, message = "仓库名长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "仓库名")
  private String warehouseName;

  @Size(max = 50, message = "卖方货币折扣价长度不能超过20")
  @ExcelProperty(value = "卖方货币折扣价")
  private java.math.BigDecimal sellerCurrencyDiscountPrice;
}
